/************************************************************
 * Project Name         [Thinking_In_Java]
 * File Name            [Examination.java]
 * Creation Date        [12-Jul-2014]
 * 
 * Copyright© ge.y.yang@gmail.com All Rights Reserved
 * 
 * Work hard, play harder, think big and keep fit
 ************************************************************/
package pkg_04_other.examApp.dao;

import java.util.List;
import java.util.Map;

import pkg_04_other.examApp.entity.Paper;
import pkg_04_other.examApp.entity.Student;

/**
 * 考试业务接口
 * 
 * @author 不落的太阳(Sean Yang)
 * @version 1.0
 * @since JDK 6
 * 
 */
public interface Examination {

	/** 考生登陆 */
	boolean login(Student student);

	/** 获取考生姓名 */
	String getName();

	/** 获取考生考号 */
	int getId();

	/** 设置考试科目 */
	void setSubject(String subject);

	/** 获得考试科目 */
	String getSubject();

	/** 获得考试全部科目 */
	List<String> getSubjects();

	/** 获得试卷 */
	Paper getPaper();

	/** 获得试题对应的答案 */
	Map<Integer, String> getCorrectAnswers();

	/** 获得试题全部答案 */
	Map<Integer, String> getAnswers();

	/** 取得分数 */
	float getScore();

	/** 计数器 */
	int getCount();

}
